/*
* Copyright (c) 2014 by Casenet, LLC
*
* This file is protected by Federal Copyright Law, with all rights
* reserved. No part of this file may be reproduced, stored in a
* retrieval system, translated, transcribed, or transmitted, in any
* form, or by any means manual, electric, electronic, mechanical,
* electro-magnetic, chemical, optical, or otherwise, without prior
* explicit written permission from Casenet, LLC.
*/

package cz.semjobKB.search.config.api;

import cz.semjobKB.search.impl.SearchRules;

/**
 * Interface declares method to extracting rule sets from XML
 */
public interface ISearchConfiguration {

    /**
     * Extracts rule sets form a given XML document. It extracts Subject, Predicate, Object and Terminology rules.
     * If a rule has a wrong configuration, null is returned.
     * @param path Path to the XML document having rule set
     * @return Rule sets for Subject, Object, Predicate and Terminology. If configuration contains error null is returned.
     */
    public SearchRules loadXMLConfiguration	(String path);

}